AI与智能硬件编程入门课

2-2 渐灭LED

课程简介

本课程将学习如何通过Arduino控制LED灯实现渐灭效果,了解PWM(脉冲宽度调制)的基本概念。

视频:渐灭LED演示

目录

  1. 知识点
  2. 学习任务
  3. 搭建
  4. 编程
  5. 知识重点

一、知识点

1. 可调节台灯怎样调节亮度?

其实亮和灭就是两个数字量,如果想要调节LED的亮度,我们就需要用到模拟量

可调节台灯

图1 可调节台灯

2. 什么是模拟输出函数?

模拟输出是系统内建的一个函数。

功能是向特定的引脚(开发板中带~的数字引脚)通过PWM方式输出模拟值,在指定引脚输出0~5V之间变化的电压值。

nano开发板引脚

图2 nano开发板引脚

二、学习任务

制作一个由最亮渐渐熄灭的LED,熄灭延时后点亮,如此反复。

三、搭建

1. 电路图

电路图

图3 电路图

2. 实验材料

arduino主控板模块、电池盒、LED模块、100Ω电阻、开关、导线

实验材料图

图4 实验材料图

3. 实际搭建图

搭建图

图5 搭建图

四、编程

1. 流程

定义引脚-LED初始亮度255-每50ms递减5-小于0时延时500ms变为255……(反复)

流程图

图5 流程图

2. IDE编程

程序要点:

  1. Setup(初始化函数)中编写定义引脚模式及序号、初始化变量。
  2. Loop(主循环函数)中编写:变量赋值为255→变量减少5→延时→LED模拟量输出值为变量值→当变量小于0时→延时500ms→变量重新为255
IDE程序截图

图6 IDE程序截图

3. 米思奇编程

程序要点:

  1. 定义管脚序号及模式
  2. 变量赋值为255→变量减少5→延时→LED模拟量输出值为变量值→当变量小于0时→延时500ms→变量重新为255→变量重新为0
米思奇程序截图

图7 米思奇程序截图

五、知识重点

while循环条件是brightness大于等于0,也就是说当brightness小于0时循环就会中断,brightness不会继续减5,延时0.5s后,回到主循环的起点变为255。